Skip to content

Conversation

@kclowes
Copy link
Collaborator

@kclowes kclowes commented Nov 7, 2025

The idea with this versioning scheme is to minimize breaking cycles for client developers. As it stands, any new PR merged has the potential to cause failures in hive's rpc-compat test runs. I think it would be good to have a hive rpc-compat run against main with the latest changes, but to also have another rpc-compat hive run that runs against a stable version of this repo so we can give clients time to upgrade without flagging new changes as failures right away. Since the current version is 1.0.0-beta.4 I propose we tag what's currently in main as v1.0.0 and then we can start merging things like #678.

@kclowes kclowes marked this pull request as ready for review November 12, 2025 18:44
@kclowes
Copy link
Collaborator Author

kclowes commented Nov 12, 2025

/cc @fjl, @lightclient, @LukaszRozmej, @macfarla and any other client devs I missed, would be great to get your feedback here too!

@LukaszRozmej
Copy link

@kclowes take a look at EIP for versioning EIP's, maybe you will have some inspiration: https://github.com/ethereum/EIPs/blob/master/EIPS/eip-7577.md

Copy link
Member

@danceratopz danceratopz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good idea. I think adding/removing might be the wrong way around though? Adding something doesn't break anything for users, whereas removing it does.

Examples of changes by version type:

**Major:**
- Adding new RPC methods
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Adding new RPC methods
- Removing an existing RPC method

- Adding new fields to response objects

**Minor:**
- Removing an existing RPC method
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Removing an existing RPC method
- Adding a new RPC method

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think both adding and removing should be in major. Here we are talking about what breaks hive tests not what breaks user experience. As such, both adding and removing is a major break in hive

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants